home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Freelog 125
/
Freelog_MarsAvril2015_No125.iso
/
Musique
/
Quod Libet
/
quodlibet-3.3.0-installer.exe
/
bin
/
quodlibet
/
qltk
/
dbus_.pyc
(
.txt
)
< prev
next >
Wrap
Python Compiled Bytecode
|
2014-12-31
|
5KB
|
132 lines
# Source Generated with Decompyle++
# File: in.pyc (Python 2.7)
import dbus
import dbus.service as dbus
from dbus import DBusException
from quodlibet.util import dbusutils
from quodlibet.parse import Query
from quodlibet.qltk.songlist import SongList
from quodlibet.util.path import fsdecode
class DBusHandler(dbus.service.Object):
def __init__(self, player, library):
try:
self.library = library
bus = dbus.SessionBus()
name = dbus.service.BusName('net.sacredchao.QuodLibet', bus = bus)
path = '/net/sacredchao/QuodLibet'
super(DBusHandler, self).__init__(name, path)
except DBusException:
pass
player.connect('song-started', self._DBusHandler__song_started)
player.connect('song-ended', self._DBusHandler__song_ended)
player.connect(('paused',), (lambda player: self.Paused()))
player.connect(('unpaused',), (lambda player: self.Unpaused()))
self._player = player
def __dict(self, song):
dict = { }
for key, value in { }.items():
if not isinstance(value, basestring):
value = unicode(value)
elif isinstance(value, str):
value = fsdecode(value)
dict[key] = dbusutils.dbus_unicode_validate(value)
if song:
dict['~uri'] = song('~uri')
return dict
def __song_started(self, player, song):
if song is not None:
song = self._DBusHandler__dict(song)
self.SongStarted(song)
def __song_ended(self, player, song, skipped):
if song is not None:
song = self._DBusHandler__dict(song)
self.SongEnded(song, skipped)
def SongStarted(self, song):
pass
SongStarted = dbus.service.signal('net.sacredchao.QuodLibet')(SongStarted)
def SongEnded(self, song, skipped):
pass
SongEnded = dbus.service.signal('net.sacredchao.QuodLibet')(SongEnded)
def Paused(self):
pass
Paused = dbus.service.signal('net.sacredchao.QuodLibet')(Paused)
def Unpaused(self):
pass
Unpaused = dbus.service.signal('net.sacredchao.QuodLibet')(Unpaused)
def GetPosition(self):
return self._player.get_position()
GetPosition = dbus.service.method('net.sacredchao.QuodLibet')(GetPosition)
def IsPlaying(self):
return not (self._player.paused)
IsPlaying = dbus.service.method('net.sacredchao.QuodLibet')(IsPlaying)
def CurrentSong(self):
return self._DBusHandler__dict(self._player.song)
CurrentSong = dbus.service.method('net.sacredchao.QuodLibet')(CurrentSong)
def Next(self):
self._player.next()
Next = dbus.service.method('net.sacredchao.QuodLibet')(Next)
def Previous(self):
self._player.previous()
Previous = dbus.service.method('net.sacredchao.QuodLibet')(Previous)
def Pause(self):
self._player.paused = True
Pause = dbus.service.method('net.sacredchao.QuodLibet')(Pause)
def Play(self):
if self._player.song is None:
self._player.reset()
else:
self._player.paused = False
Play = dbus.service.method('net.sacredchao.QuodLibet')(Play)
def PlayPause(self):
return self._player.paused
PlayPause = dbus.service.method('net.sacredchao.QuodLibet')(PlayPause)
def Query(self, query):
if query is not None:
try:
results = Query(query, star = SongList.star).search
except Query.error:
pass
return [ self._DBusHandler__dict(s) for s in self.library.itervalues() if results(s) ]
Query = dbus.service.method('net.sacredchao.QuodLibet', in_signature = 's')(Query)